package com.kantboot.business.water.service;

import com.kantboot.business.water.domain.dto.BusWaterLiftingPointSearchDTO;
import com.kantboot.business.water.domain.dto.BusWaterLiftingPointSearchFrontDTO;
import com.kantboot.business.water.domain.entity.BusWaterLiftingPoint;
import com.kantboot.util.core.param.PageParam;
import com.kantboot.util.core.result.PageResult;

import java.util.List;

public interface IBusWaterLiftingPointService {

    /**
     * 管理后台获取数据
     * @param pageParam 分页参数
     * @return 分页结果
     */
    PageResult getBodyData(PageParam<BusWaterLiftingPointSearchDTO> pageParam);

    /**
     * 用户前台获取数据
     * @param pageParam 分页参数
     * @return 分页结果
     */
    PageResult getBodyDataFront(PageParam<BusWaterLiftingPointSearchFrontDTO> pageParam);

    /**
     * 根据用户id获取提水点列表
     */
    List<BusWaterLiftingPoint> getListByUserId(Long userId);

    /**
     * 获取用户自身的提水点列表
     */
    List<BusWaterLiftingPoint> getSelfList();


    /**
     * 根据id查询
     */
    BusWaterLiftingPoint getById(Long id);

    /**
     * 给用户绑定提水点
     */
    void bindLiftingPoint(Long userId, List<Long> liftingPointIds);

}
